16. 附录 1: java程序员的 Chapter 1

By the C, by the C, by the Beautiful C --"By the Beautiful Sea", Carroll and Atteridge, 1914

[!NOTE] 本附录是 第 1 章 的一个版本,专门为 Java 程序员编写。其内容与第 1 章几乎相同,只是为了进行比较,它使用了 Java 示例,而不是第 1 章中使用的 Python 示例。

本附录概述了 C 语言编程,适合有其他语言编程经验的学生。它专门为 Java 程序员编写,并使用了一些 Java 示例进行比较。但是,对于任何具有任何语言基本编程经验的人来说,它都应该是一本有用的 C 语言编程入门书。

C 是一种高级编程语言,就像您可能知道的其他语言一样,例如 Python、Java、Ruby 或 C++。它是一种命令式和过程式编程语言,这意味着 C 程序表示为计算机要执行的一系列语句(步骤),并且 C 程序被构建为一组函数(过程)。每个 C 程序都必须至少有一个函数,即 main 函数,其中包含程序启动时执行的一组语句。

与您可能熟悉的其他一些语言相比,C 编程语言与计算机机器语言的抽象程度较低。这意味着 C 不支持面向对象编程,也没有丰富的高级编程抽象(如 String 和 ArrayList)和大量供程序员使用的类库,也不支持垃圾收集和异常。因此,如果您想在 C 程序中使用字典之类的数据结构,则需要自己实现它,而不是直接使用 Java 类库中已实现的数据结构。

C 语言缺乏高级抽象,这可能使它看起来不太吸引人。然而,由于与底层机器的抽象程度较低,C 语言让程序员更容易看到和理解程序代码与计算机执行之间的关系。C 语言程序员对程序在硬件上的执行方式保留了更多的控制权,并且他们可以编写比使用其他编程语言提供的高级抽象编写的等效代码更高效的代码。特别是,他们可以更好地控制程序如何管理内存,这会对性能产生重大影响。因此,在低级控制和效率至关重要的计算机系统编程中,C 语言仍然是事实上的语言。

我们在本书中使用 C 语言,因为它具有丰富的程序控制表达能力,并且可以相对直接地转换为计算机执行的汇编代码和机器代码。本章向熟悉 Java 的读者介绍 C 语言编程,首先概述 C 语言的特性及其与 Java 编程语言的关系。 2.0. 深入c语言编程然后更详细地描述了 C 语言的特性。